﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Common.Model;
using System.IO;
using Common.Extensions;
using JOthello.FB;
using JOthello.Controls;

namespace JOthello.Forms
{
    public partial class MainForm : Form
    {

        #region getter / setter
        public Button BtnImport
        {
            get
            {
                return btnImport;
            }
            set
            {
                btnImport = value;
            }
        }
        public ComboBox CboSpielerTyp
        {
            get
            {
                return cboSpielerType;
            }
            set
            {
                cboSpielerType = value;
            }
        }
        public TrackBar TrkDifficult
        {
            get
            {
                return trkDifficult;
            }
            set
            {
                trkDifficult = value;
            }
        }
        public TrackBar TrkGameMode
        {
            get
            {
                return trkGameMode;
            }
            set
            {
                trkGameMode = value;
            }
        }
        public PictureBox PbxSpielerBild
        {
            get
            {
                return pbxSpielerBild;
            }
            set
            {
                pbxSpielerBild = value;
            }
        }
        public Label LblDifficult
        {
            get
            {
                return lblDifficult;
            }
            set
            {
                lblDifficult = value;
            }
        }
        public Label LblGamemodeDefault
        {
            get
            {
                return lblGamemodeDefault;
            }
            set
            {
                lblGamemodeDefault = value;
            }
        }
        public Label LblGamemodeReversi
        {
            get
            {
                return lblGamemodeReversi;
            }
            set
            {
                lblGamemodeReversi = value;
            }
        }
        public Button BtnLetsGo
        {
            get
            {
                return btnLetsGo;
            }
            set
            {
                btnLetsGo = value;
            }
        }
        public Button BtnComputerAdd
        {
            get
            {
                return btnComputerAdd;
            }
            set
            {
                btnComputerAdd = value;
            }
        }
        public Button BtnSpielerAdd
        {
            get
            {
                return btnSpielerAdd;
            }
            set
            {
                btnSpielerAdd = value;
            }
        }
        public Button BtnFacebook
        {
            get
            {
                return btnFacebook;
            }
            set
            {
                btnFacebook = value;
            }
        }
        public DataGridView DgvSpielerAll
        {
            get
            {
                return dgvSpielerAll;
            }
            set
            {
                dgvSpielerAll = value;
            }
        }
        public TextBox TxtSpielerName
        {
            get
            {
                return txtSpielerName;
            }
            set
            {
                txtSpielerName = value;
            }
        }
        public NumericUpDown NudFieldSize
        {
            get
            {
                return this.nudFieldsize;
            }
            set
            {
                this.nudFieldsize = value;
            }
        }
        public Label LblFieldSize
        {
            get
            {
                return this.lblFieldSize;
            }
            set
            {
                this.lblFieldSize = value;
            }
        }
        public CheckBox ChkPossibleMoves
        {
            get
            {
                return chkPossibleMoves;
            }
            set
            {
                chkPossibleMoves = value;
            }
        }
        #endregion

        private MainControl Control;

        public MainForm(string[] args)
        {
            InitializeComponent();

            this.Icon = Properties.Resources.icon;

            Control = new MainControl(this, args);
        }
    }
}
